﻿''============================================================================
''OMANE - Consultation / modification du référentiel
''Copyright © 2010 PIERRE TISSOT CONSEIL / NATIXIS ASSURANCES
''=============================================================================

Imports PTIC_GestionBDD
Imports PTIC_Util

Public Class frmDonneesReferentielles

#Region "Variables de classe"
    Protected _UniversBDD As UniversOMANE
    Protected dv_VueTableTrav As DataView
#End Region

#Region "Création d'une instance"
    Public Sub New(ByVal universBDD As UniversOMANE)


        _UniversBDD = universBDD
        dv_VueTableTrav = New DataView()
        dv_VueTableTrav.Table = _UniversBDD.refListeTablesReferentiel

        ' Cet appel est requis par le Concepteur Windows Form.
        InitializeComponent()

        cbx_nomTbleTrav.DisplayMember = "strNomTable"
        cbx_nomTbleTrav.ValueMember = "strNomFichier"
        cbx_nomTbleTrav.DataSource = dv_VueTableTrav

        PtiC_lbl_descrTbleTrav.DataBindings.Add("Text", dv_VueTableTrav, "strDescriptionTable")

    End Sub
#End Region

#Region "Changement du type de table visualisé"
    Private Sub rdb_typeTable_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles _
    rdb_TableMort.CheckedChanged, rdb_AbatFraINCINV.CheckedChanged, rdb_GrilleTarif.CheckedChanged, _
    rdb_TauxMaintienINCINV.CheckedChanged

        Dim rdb_hasChanged As RadioButton = CType(sender, RadioButton)
        If rdb_hasChanged.Checked Then

            If rdb_hasChanged Is rdb_AbatFraINCINV Then
                dv_VueTableTrav.RowFilter = "strTypeTable='FRAINCINV'"
            ElseIf rdb_hasChanged Is rdb_TableMort Then
                dv_VueTableTrav.RowFilter = "strTypeTable='DC'"
            ElseIf rdb_hasChanged Is rdb_GrilleTarif Then
                dv_VueTableTrav.RowFilter = "strTypeTable='TARIF'"
            ElseIf rdb_hasChanged Is rdb_TauxMaintienINCINV Then
                dv_VueTableTrav.RowFilter = "strTypeTable='MAINTINCINV'"
            End If

        End If

    End Sub
#End Region

#Region "Changement de la table visualisée"
    Private Sub lbl_nomTbleTrav_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) _
            Handles PtiC_lbl_descrTbleTrav.TextChanged

        Try
            Dim tableBDDref As tableBDD = _UniversBDD.getTableBDDReferentiel("TOTO", cbx_nomTbleTrav.SelectedValue)
            Dim dataTableRef As DataTable = tableBDDref.execute_DataTable(False)
            DataGridView3.DataSource = dataTableRef
            Dim typeRef As String = ""
            If rdb_TauxMaintienINCINV.Checked Then typeRef = "INCINVtaux"
            If rdb_AbatFraINCINV.Checked Then typeRef = "INCINVfra"
            MAJdgv(DataGridView3, typeRef)
        Catch ex As Exception
            If _UniversBDD.connectionSAS.State <> ConnectionState.Closed Then
                _UniversBDD.connectionSAS.Close()
            End If
        End Try

    End Sub
#End Region

#Region "Import / modification d'une table de référentiel"

    Private Sub btn_saveTableRef_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn_saveTableRef.Click
        Dim nomFichierTbleRef As New Cla_NomFichier("C:\Pti\Travail\3005 - NATIXIS ASSURANCES\01_OMANE\03_Paramétrage\_refTables.xls")
        Dim nomTraitement As String = "TEXTEXCEL"
        'Dim tbleExcel As New tableBDD_Excel(nomTraitement, nomFichierTbleRef)
        'DataGridView3.DataSource = tbleExcel.resultatReq
    End Sub

    Private Sub btn_loadTbleRef_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn_loadTbleRef.Click

        Dim openFileDialog1 As New OpenFileDialog

        'Initialisation de l'objet openFileDialog1
        openFileDialog1.InitialDirectory = csteRepertoireTbleTravail
        openFileDialog1.Filter = "Fichiers Excel (*.xls)|*.xls|Table SAS (*.sas7bdat)|*.sas7bdat"

        'Ouverture de la boite de dialogue et teste la validité du résultat
        If openFileDialog1.ShowDialog() = DialogResult.OK Then

            Dim d As New DataTable
            Dim nomBDD As String = openFileDialog1.FileName
            'Dim tbleTravail As tableBDD_Excel = New tableBDD_Excel("TbleListeRef", New Cla_NomFichier(nomBDD))
            'tbleTravail.nomTable = "refTables"
            'd = tbleTravail.execute_DataTable(True)

            'Création de la vue
            Dim vue As DataView = New DataView(d)
            vue.RowFilter = "strTypeTable='DC'"
            vue.Sort = "strNomTable"

            'Ajout de la vue à la comboBox
            DataGridView3.DataSource = vue
            cbx_nomTbleTrav.DataSource = vue
            cbx_nomTbleTrav.DisplayMember = "strNomTable"
            cbx_nomTbleTrav.ValueMember = "strNomFichier"
            ''''DataGridView3.DataSource = tbleTravail.resultatReq

        End If

    End Sub

    'Chargement du référentiel des tables de travail
    Private Sub chargeRefTbleTrav()
        Dim nomRefTbleTrav As String = csteRepertoireTbleTravail & ""
    End Sub

    Private Sub btn_chargeTble_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        'Ouverture d'une boite de dialogue pointant vers le répertoire de stockage des tables de travail
        'Création d'une dataTableBDD (à enregistrer dans l'univers OMANE) permettant de référencer
        'la table de référentiel en cours de paramétrage


        'Déclaration de l'objet représentant la boite de dialogue d'ouverture de fichier
        Dim openFileDialog1 As New OpenFileDialog

        'Initialisation de l'objet openFileDialog1
        openFileDialog1.InitialDirectory = csteRepertoireTbleTravail
        openFileDialog1.Filter = "Fichiers access (*.mdb)|*.mdb|Table SAS (*.sas7bdat)|*.sas7bdat"

        'Ouverture de la boite de dialogue et teste la validité du résultat
        If openFileDialog1.ShowDialog() = DialogResult.OK Then

            Dim nomTable As String = openFileDialog1.FileName

            'Récupération du nom du fichier et de son extension dans un label
            'PTICLbl_NomModeleTble.Text = nomTable

            Dim tbleTravail As TableBDD_SAS = New TableBDD_SAS("TbleEncours", _
                                                         New Cla_NomFichier(nomTable), _
                                                        _UniversBDD.connectionSAS, _
                                                        csteLibSASreferentiel)

            DataGridView3.DataSource = tbleTravail.execute_DataTable(True)

            'Ajout d'un traitement de récupération de table dans l'univers de travail
            ''''Dim nomBDDEncours As New Cla_NomFichier(openFileDialog1.FileName)
            ''''Dim nomBDDtravail As New Cla_NomFichier("C:\Pti\Travail\3005 - NATIXIS ASSURANCES\01_OMANE\03_Paramétrage\tbleincinvfra.sas7bdat")
            ''''_UniversBDD.SAS_initWorkspace()
            ''''_UniversBDD.initConnectionEncours(nomBDDEncours)
            ''''_UniversBDD.initConnectionTbleTravail(nomBDDtravail)
            ''''_tableBDD_Encours = New TableBDDEncTxGarSAS("TbleEncours", _
            ''''                                            nomBDDEncours, _
            ''''                                            _UniversBDD.connectionTbleEncours)
            ''''_UniversBDD.addTraitement(_tableBDD_Encours)

            'Récupération des tables de travail dans le dataSet
            ''''Etd_EnCours.recup_Table_BDD("TblesMortalite")
            ''''Etd_EnCours.recup_Table_BDD("TbleINCINVTaux")
            ''''Etd_EnCours.recup_Table_BDD("TbleINCINVFra")

            'Mise à jour de l'affichage des contrôles
            ''''PtiC_PanelGpeBoxChoixTbleEnc.Enabled = True
            ''''btn_visualiser.Enabled = True
            ''''cbx_NomTableEncours.Enabled = True
            ''''lbl_EncNbColtble.Enabled = False
            ''''lbl_EncNblgntble.Enabled = False
            ''''lbl_nblgntbleEncours.Enabled = False
            ''''lbl_nbcoltbleEncours.Enabled = False


            'Mise à jour de la combo pour le choix de la table à extraire
            ''''alimComboBoxFromStringColl(cbx_NomTableEncours, _tableBDD_Encours.getListTablesDispoBDD)
            ''''If cbx_NomTableEncours.Items.Count = 1 Then
            ''''cbx_NomTableEncours.SelectedItem = cbx_NomTableEncours.Items(0)
            ''''End If

        End If

    End Sub

#End Region

End Class